This invention relates generally to video call communications, and more specifically relates to a system and method for routing video calls.
Video communications give a personal touch that is simply not available from audio only telephone communications. Participants in a video call have a greater personal presence and also are able to share presentations and data in a more meaningful manner than is available with audio only communications. Indeed, businesses have invested substantial sums in video devices to take advantage of the more personal communication provided by video calls. As a result, video calls have grown as a more common manner of communications, both for intra company meetings and meetings with outside businesses conducted through public networks.
Unfortunately, configuring, scheduling, establishing, and maintaining a video call is a complex process beyond the expertise of most users of video devices. For example, there are different types of video devices from various manufacturers. Assuming that a user is able to successfully interact with different video devices, other complexities remain as an obstacle to a successful video call configuration. With multi-endpoint video calls, the user must typically route the video call through an infrastructure routing element such as a multipoint control unit (MCU). As another layer of complexity, if video devices communicate over different protocols, such as H.323 and H.320, then the user typically must route the video call through a gateway device.
Establishing and maintaining a video call is an important and difficult task for the users of video devices. For instance, once a video call is established, if a failure or malfunction occurs in one of the devices routing the video calls typically the video call is lost or has to be taken down and then reestablished using different MCU""s. Losing the video call is burdensome to the users because the downtime required to reestablish the video call is an inefficient use of time because the users cannot communicate with other users in different locations and do not know when the connection for the video call will be reestablished. Therefore, the users generally have to wait for the video call to be reestablished when they could be doing something more productive.
In addition, configuring a video call through different infrastructure routing elements also creates difficulties. Routing a video call between two or more video devices requires the use of infrastructure routing elements such as MCU""s. There are various types of MCU""s produced by different manufacturers. When routing a video call, the users want to take advantage of the most efficient and dependable MCU""s to help insure that the video call will not be lost once the video call is established. Typically though, MCU reliability information is not available to the users or if it is available, the information is not consistently updated to reflect current operating status for the MCU""s. Therefore the users must either guess as to what are the most reliable infrastructure routing elements or route the video calls through what where at one point in time the most efficient or dependable MCU""s but may not currently be the most reliable. In addition to the availability of MCU reliability information, routing video calls through MCU""s may be difficult to the MCU""s not having sufficient resources for a video call but the user is not aware of this problem. Insufficient resources may result from other video calls scheduled at the same time or the other video calls consuming all MCU bandwidth. Access to this information is typically also not available to the users further creating additional routing difficulties.
Because losing a video call and reestablishing the video call after the video call begins results in an inefficient use of the user""s time, monitoring the video call while the video call is operational is important to having a dependable and effective video network. Typically, the route or path of transmission for the video call between the video devices and infrastructure routing elements provides information on whether there are any errors with the video call. Generally, the transmission may send out pings and receive answers back from the pings to determine the status of the transmission. But the fallacy in this arrangement is that the transmission of the video call is reporting back on itself and there is no external monitoring of the video calls. Since the video call transmission is reporting back on itself, the video call transmission may be less likely to detect errors or malfunctions or not detect errors or malfunctions as quickly as an external monitor. Therefore, the users may experience malfunctions or lost video calls that may have been preventable if the transmission of the video calls were monitored by an external monitor.
Therefore a need has arisen for a system and a method which provides for quickly re-routing a video call without losing communication between the video endpoints.
A further need has arisen for a system and method that allows the video network to take advantage of the most dependable and efficient infrastructure routing elements.
A further need exists for a system and method which allows for the external monitoring of the video network.
In accordance with the present invention, a system and method are provided which substantially reduce the problems and disadvantages associated with routing video calls. A video network allows for the intelligent scheduling and routing of video calls based on the historical and current performance of one or more infrastructure routing elements thereby allowing video calls to be re-routed without losing communication between the video endpoints.
More specifically, a video network includes one or more video endpoints in communication with a video network platform. The video network further includes an array of infrastructure routing elements associated with the video endpoints that transmit video calls between the video endpoints along one or more routes. A scheduling engine, associated with the video network platform and the infrastructure routing elements, monitors the performance of the infrastructure routing elements, determines a reliability model for each infrastructure routing element or for a selected grouping or combination of infrastructure routing elements, and intelligently routes the video calls using the reliability models for the infrastructure routing elements.
More specifically, the scheduling engine monitors the infrastructure routing elements for malfunctions or failure. When an infrastructure routing element experiences a malfunction, the scheduling engine updates the reliability model corresponding to the infrastructure routing element experiencing the malfunction noting both the failure of the infrastructure routing element and the operational parameters surrounding the failure. When an infrastructure routing element fails, the scheduling module re-routes the video call that was going through the failed infrastructure routing element to a predetermined back-up route or through a different route based on which of the available infrastructure routing elements are the most reliable and efficient.
In an alternative embodiment, the infrastructure routing elements comprise MCU""s having one or more input ports and one or more output ports. Each input port and each output port has a corresponding reliability model that relates to the performance of the ports. When a port experiences a malfunction or failure, the scheduling engine is operable to re-route the video calls among the ports of the MCU based on the reliability model of each input port and each output port as well as other MCU""s, alternate gateways, routers, switches, and other appropriate video devices. Re-routing a video call between different ports on a MCU allows for a video call to be re-routed without losing communication between the video devices. In addition, the MCU""s having multiple ports also allows for more than one video call to pass through a single MCU at the same time.
In an alternative embodiment, the video network platform utilizes non-enterprise infrastructure routing elements to complete and re-route video calls. There may be instances when an infrastructure routing element fails but there are no available infrastructure routing elements to re-route the video call through because all the other infrastructure routing elements within the video network are processing other video calls. In these instances, the scheduling engine utilizes one or more non-enterprise infrastructure routing elements to re-route the video call to keep the video call going. The scheduling engine determines a probability regarding when and how many of the non-enterprise infrastructure routing elements may be needed and schedules with the owner of the non-enterprise infrastructure routing elements use of the non-enterprise infrastructure routing elements so that some number of non-enterprise infrastructure routing elements will be available to the video network. Therefore, when an infrastructure routing element fails and no enterprise owned infrastructure routing elements are available, the video call may be re-routed using one or more of the non-enterprise infrastructure routing element.
In another embodiment, the video network platform employs a principle route and a back-up route for a video call. The video network platform prioritizes the principle and back-up routes so that a principle route for one video call takes priority over the back-up route for another video call. Therefore, if the principle route of one video call uses the same infrastructure routing element as the back-up route of another video call, the video network platform re-routes the back-up route so the back-up route no longer interferes with the principle route.
The present invention provides a number of important technical advantages. One important technical advantage of the present invention is that video calls may be quickly re-routed without losing communication between the video endpoints. Re-routing video calls without having to drop the communication between the video endpoints increases productivity because the video call continues as the video call is being re-routed. Because no video call down-time is required to re-route the video call, the majority of users may not even know that that video call was re-routed and no time is lost to reestablishing the video call. In addition, the video call continues without any interruption allowing for video call performance that is satisfactory to the users.
Another important technical advantage of the present invention is the ability to route video calls through the most reliable or efficient infrastructure routing elements such as MCU""s. The ability to track and monitor the performance of the infrastructure routing elements allows for knowledge of which infrastructure elements are most dependable and least likely to experience a failure or other malfunction. Therefore, when all the infrastructure routing elements are not utilized, video calls may be routed through the most dependable or efficient infrastructure routing elements to create a more dependable and stable video call for the users. In addition, infrastructure routing elements that are prone to failures and malfunctions can be avoided so as to have a more reliable video network.
Another important technical advantage of the present invention is the external monitoring of the transmission of the video calls. External monitoring allows for the monitoring of all aspects of the video calls instead of just monitoring the routes and transmissions. Having an external monitor instead of having the route report back on itself allows for a more comprehensive understanding of the video network and how every element within the video network is functioning. External monitoring of the entire video network allows for more errors to be detected because all the elements are being monitored instead of only the route. Therefore, more errors are likely to be discovered and errors are likely to be discovered earlier which allows for time to make a correction and keep the video calls going without losing communication between the video devices.